package com.reliable.service.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * Excel文件上传任务记录对象 reliab_upload_record
 *
 * @author ruoyi
 * @date 2025-10-17
 */
@Data
@TableName("reliab_upload_record")
@ApiModel(value = "Excel文件上传任务记录对象")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ReliabUploadRecord extends BaseEntitys {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    private Long id;

    @ApiModelProperty(value = "任务id", position = 0)
    @TableField(exist = false)
    private String BusinessId;

    /**
     * 任务id
     */
    //@ApiModelProperty(value = "任务id", position = 1)
    private Long taskId;


    @ApiModelProperty(value = "任务id", position = 0)
    @TableField(exist = false)
    private String taskBusinessId;


    /**
     * 用户上传的原始文件名
     */
    @ApiModelProperty(value = "用户上传的原始文件名", position = 2)
    private String fileName;

    /**
     * 上传状态：1：处理中、2:成功、3.失败 4.部分成功
     */
    @ApiModelProperty(value = "上传状态：1：处理中、2:成功、3.失败 4.部分成功", position = 3)
    private Integer status;

    /**
     * Excel文件总行数（不含标题行）
     */
    @ApiModelProperty(value = "Excel文件总行数（不含标题行）", position = 4)
    private Integer totalRows;

    /**
     * 成功解析并写入PG的消息行数
     */
    @ApiModelProperty(value = "成功解析并写入PG的消息行数", position = 5)
    private Integer successRows;

    /**
     * 解析失败的行数
     */
    @ApiModelProperty(value = "解析失败的行数", position = 6)
    private Integer failedRows;

    /**
     * 失败时的错误详情（仅当状态为FAILED或COMPLETED_WITH_ERRORS时有值）
     */
    @ApiModelProperty(value = "失败时的错误详情（仅当状态为FAILED或COMPLETED_WITH_ERRORS时有值）", position = 7)
    private String errorMessage;

    @ApiModelProperty(value = "上传的OSS文件地址", position = 8)
    private String ossUrl;


}